package org.example.coffeeshoporderingsystem.staff.entity;


import org.example.coffeeshoporderingsystem.common.enitty.BaseEntity;
import org.example.coffeeshoporderingsystem.store.entity.Store;

import java.time.LocalDateTime;

public class Staff extends BaseEntity {
    /*店员唯一标识符*/
    private Integer staffId ;
    /*店员姓名*/
    private String name;
    /*店员邮箱*/
    private String email;
    /*店员电话号码*/
    private String phoneNumber ;
    /*店员角色*/
    private String role ;
    /*门店*/
    private Store store ;
    /*创建时间*/
    private LocalDateTime createdAt ;
    /*更新时间*/
    private LocalDateTime  updatedAt ;

    public Staff() {
    }

    public Staff(Integer staffId, String name) {
        this.staffId = staffId;
        this.name = name;
    }

    public Staff(Integer staffId, String name, String email, String phoneNumber, String role, Store store, LocalDateTime createdAt, LocalDateTime updatedAt) {
        this.staffId = staffId;
        this.name = name;
        this.email = email;
        this.phoneNumber = phoneNumber;
        this.role = role;
        this.store = store;
        this.createdAt = createdAt;
        this.updatedAt = updatedAt;
    }

    public Integer getStaffId() {
        return staffId;
    }

    public void setStaffId(Integer staffId) {
        this.staffId = staffId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public Store getStore() {
        return store;
    }

    public void setStore(Store store) {
        this.store = store;
    }

    public LocalDateTime getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(LocalDateTime createdAt) {
        this.createdAt = createdAt;
    }

    public LocalDateTime getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(LocalDateTime updatedAt) {
        this.updatedAt = updatedAt;
    }

    @Override
    public String toString() {
        return "Staff{" +
                "staffId=" + staffId +
                ", name='" + name + '\'' +
                ", email='" + email + '\'' +
                ", phoneNumber='" + phoneNumber + '\'' +
                ", role='" + role + '\'' +
                ", store=" + store +
                ", createdAt=" + createdAt +
                ", updatedAt=" + updatedAt +
                "} " + super.toString();
    }
}
